package com.rock.code.common.util;

import net.sf.json.JSONArray;
import net.sf.json.JSONObject;

import java.util.ArrayList;
import java.util.Collection;
import java.util.List;

public class JSONUtil {
    
    /**
     * 将java对象转换成json字符串
     */
    public static String toJSON(Object obj) {
        if (obj == null) {
            return null;
        } else if (obj.getClass().isArray() || obj instanceof Collection) {
            return JSONArray.fromObject(obj).toString();
        } else {
            return JSONObject.fromObject(obj).toString();
        }
    }
    
    /**
     * 将json字符串数组转换成java的List对象，对象转换成java的Map对象
     */
    public static Object fromJSON(String json) {
        if (json == null) {
            return null;
        } else if (json.startsWith("[")) {
            return JSONArray.fromObject(json);
        } else {
            return JSONObject.fromObject(json);
        }
    }
    
    public static void main(String[] args) {
        List<String> list = new ArrayList<>();
        list.add("aa");
        list.add("bb");
        System.out.println(JSONUtil.toJSON(list));
    }
}
